Cuando ejecuto mi aplicación a través docker-compose up , se compila y ejecuta sin problemas. Cuando trato de alojarlo en Docker Hub, no se puede compilar con el error COPY failed: no source files were specified . Creo que es porque Dockerfile no está en el directorio raíz.
Mi estructura de carpetas es así:
root -- docker-compose.yml -- app -- Dockerfile -- package.json -- package-lock.json -- src -- ..... Mi Dockerfile está debajo, y cuando ejecuto docker-compose up (que apunta al Dockerfile dentro de /app ) funciona bien:
FROM node:8.10.0-alpine WORKDIR /usr/src/app COPY package*.json /usr/src/app/ RUN npm install --production COPY . /usr/src/app EXPOSE 4000 CMD ["npm", "run", "app"]Quiero alojar mi proyecto en Docker Hub, pero recibo el siguiente error:
Step 1/7 : FROM node:8.10.0-alpine ---> adc4b0f5bc53 Step 2/7 : WORKDIR /usr/src/app Removing intermediate container 743246352cea ---> 3dcb720d4618 Step 3/7 : COPY package*.json /usr/src/app/ COPY failed: no source files were specifiedLas reglas de compilación que configuré para apuntar a la ubicación correcta de Dockerfile se encuentran a continuación:
¿Mi Dockerfile es incorrecto o no estoy configurando Docker Hub correctamente cuando intento conectarlo a mi repositorio de GitHub?
Para el contexto, el repositorio de GitHub está aquí .
En la configuración de compilación, debe configurar el directorio "contexto de compilación" en lugar de cambiar la ubicación de Dockerfile. De lo contrario, la compilación se ejecutará en el padre de su repositorio de github donde los archivos del package*.json no existen. Tenga en cuenta la columna después de "Ubicación de Dockerfile" al configurar compilaciones automatizadas en el siguiente ejemplo: